package com.smart.modal.domain.bo;

import com.smart.entity.BaseEntity;
import com.smart.modal.domain.SysModelData;
import com.smart.validate.AddGroup;
import com.smart.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import lombok.EqualsAndHashCode;


/**
 * 系统模型配置信息业务对象 sys_model_data
 *
 * @author LuckyBoy
 * @date 2025-11-03
 */
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = SysModelData.class, reverseConvertGenerate = false)
public class SysModelDataBo extends BaseEntity {

    /**
     * 主键ID
     */
    @NotBlank(message = "主键ID不能为空", groups = {EditGroup.class})
    private String id;

    /**
     *
     */
    private String model;

    /**
     * 模型名称
     */
    private String modelName;

    /**
     * 模型路径
     */
    private String modelPath;

    /**
     * 应用密钥
     */
    private String appKey;

    /**
     * 模型参数(JSON格式)
     */
    private String modelParam;

    /**
     *
     */
    @NotBlank(message = "不能为空", groups = {AddGroup.class, EditGroup.class})
    private String thinking;

    /**
     * 最大上下文长度
     */
    private Long maxContextLength;


}
